﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace IDAL
{
    public interface IAlbumDAL
    {
        /////////////////////////////////////////////////////
        //private int _AB_albumId;

        //private int _AB_userId;

        //private string _AB_albumName;

        //private int _AB_authority;

        //private System.DateTime _AB_generateTime;

        //private string _AB_description;

        //private int _AB_photoCount;

        ////////////////////////////////////////////////////////


        /// <summary>
        /// 根据传入的accountID判断一条数据是否存在
        /// </summary>       
        bool albumIdExists(int albumId);


        /// <summary>
        /// 根据传入的albumname判断一条数据是否存在
        /// </summary>       
        bool albumNameExists(string albumName);


        /// <summary>
        /// 根据传入的userID判断一条数据是否存在
        /// </summary>       
        bool userExists(int userId);


        /// <summary>
        /// 增加一条数据
        /// </summary>                
        bool Add(int userId, string albumName, int authority, System.DateTime generateTime, string description, int photoCount);


        /// <summary>
        /// 增加一条数据
        /// </summary>                
        bool Add(Model.Album album);


        /// <summary>
        /// 更新一条数据
        /// </summary>             
        bool Update(int albumId, int userId, string albumName, int authority, System.DateTime generateTime, string description, int photoCount);


        /// <summary>
        /// 更新一条数据
        /// </summary>             
        bool Update(Model.Album album);


        /// <summary>
        /// 根据传入的accountID删除一条数据
        /// </summary>
        bool albumDelete(int albumId);


        /// <summary>
        /// 根据传入的userID删除一条数据
        /// </summary>
        bool userDelete(int userId);


        /// <summary>
        /// 根据传入的albumId得出相册内照片数
        /// </summary>
        int getCount(int albumId);


        /// <summary>
        /// 根据传入的albumId得到相册访问权限
        /// </summary>
        int getAuthority(int albumId);


        /// <summary>
        /// 根据传入的albumId得出相册描述
        /// </summary>
        string getDescription(int albumId);


        /// <summary>
        /// 根据accountID得到一个对象实体
        /// </summary>
        Model.Album GetModel(int albumId);

    }
}
